<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<p>我爱滚1</p>
		<p>我爱滚2</p>
		<p>我爱滚3</p>
		<p>我爱滚4</p>
		<p>我爱滚5</p>
		<p>我爱滚6</p>
		<p>我爱滚7</p>
		<p>我爱滚8</p>
		<p>我爱滚9</p>
		<p>我爱滚10</p>
		<p>我爱滚11</p>
		<p>我爱滚12</p>
		<p>我爱滚13</p>
		<p>我爱滚14</p>
		<p>我爱滚15</p>
		<p>我爱滚16</p>
		<p>我爱滚17</p>
		<p>我爱滚18</p>
		<p>我爱滚19</p>
		<p>我爱滚20</p>
		<p>我爱滚21</p>
		<p>我爱滚22</p>
		<p>我爱滚23</p>
		<p>我爱滚24</p>
		<p>我爱滚25</p>
		<p>我爱滚26</p>
		<p>我爱滚27</p>
		<p>我爱滚28</p>
		<p>我爱滚29</p>
		<p>我爱滚30</p>
		<p>我爱滚31</p>
		<p>我爱滚32</p>
		<p>我爱滚33</p>
		<p>我爱滚34</p>
		<p>我爱滚35</p>
		<p>我爱滚36</p>
		<p>我爱滚37</p>
		<p>我爱滚38</p>
		<p>我爱滚39</p>
		<p>我爱滚40</p>
		<p>我爱滚41</p>
		<p>我爱滚42</p>
		<p>我爱滚43</p>
		<p>我爱滚44</p>
		<p>我爱滚45</p>
		<p>我爱滚46</p>
		<p>我爱滚47</p>
		<p>我爱滚48</p>
		<p>我爱滚49</p>
		<p>我爱滚50</p>
		<p>我爱滚51</p>
		<p>我爱滚52</p>
		<p>我爱滚53</p>
		<p>我爱滚54</p>
		<p>我爱滚55</p>
		<p>我爱滚56</p>
		<p>我爱滚57</p>
		<p>我爱滚58</p>
		<p>我爱滚59</p>
		<p>我爱滚60</p>
		<p>我爱滚61</p>
		<p>我爱滚62</p>
		<p>我爱滚63</p>
		<p>我爱滚64</p>
		<p>我爱滚65</p>
		<p>我爱滚66</p>
		<p>我爱滚67</p>
		<p>我爱滚68</p>
		<p>我爱滚69</p>
		<p>我爱滚70</p>
		<p>我爱滚71</p>
		<p>我爱滚72</p>
		<p>我爱滚73</p>
		<p>我爱滚74</p>
		<p>我爱滚75</p>
		<p>我爱滚76</p>
		<p>我爱滚77</p>
		<p>我爱滚78</p>
		<p>我爱滚79</p>
		<p>我爱滚80</p>
		<p>我爱滚81</p>
		<p>我爱滚82</p>
		<p>我爱滚83</p>
		<p>我爱滚84</p>
		<p>我爱滚85</p>
		<p>我爱滚86</p>
		<p>我爱滚87</p>
		<p>我爱滚88</p>
		<p>我爱滚89</p>
		<p>我爱滚90</p>
		<p>我爱滚91</p>
		<p>我爱滚92</p>
		<p>我爱滚93</p>
		<p>我爱滚94</p>
		<p>我爱滚95</p>
		<p>我爱滚96</p>
		<p>我爱滚97</p>
		<p>我爱滚98</p>
		<p>我爱滚99</p>
		<p>我爱滚100</p>
		<p>我爱滚101</p>
		<p>我爱滚102</p>
		<p>我爱滚103</p>
		<p>我爱滚104</p>
		<p>我爱滚105</p>
		<p>我爱滚106</p>
		<p>我爱滚107</p>
		<p>我爱滚108</p>
		<p>我爱滚109</p>
		<p>我爱滚110</p>
		<p>我爱滚111</p>
		<p>我爱滚112</p>
		<p>我爱滚113</p>
		<p>我爱滚114</p>
		<p>我爱滚115</p>
		<p>我爱滚116</p>
		<p>我爱滚117</p>
		<p>我爱滚118</p>
		<p>我爱滚119</p>
		<p>我爱滚120</p>
		<p>我爱滚121</p>
		<p>我爱滚122</p>
		<p>我爱滚123</p>
		<p>我爱滚124</p>
		<p>我爱滚125</p>
		<p>我爱滚126</p>
		<p>我爱滚127</p>
		<p>我爱滚128</p>
		<p>我爱滚129</p>
		<p>我爱滚130</p>
		<p>我爱滚131</p>
		<p>我爱滚132</p>
		<p>我爱滚133</p>
		<p>我爱滚134</p>
		<p>我爱滚135</p>
		<p>我爱滚136</p>
		<p>我爱滚137</p>
		<p>我爱滚138</p>
		<p>我爱滚139</p>
		<p>我爱滚140</p>
		<p>我爱滚141</p>
		<p>我爱滚142</p>
		<p>我爱滚143</p>
		<p>我爱滚144</p>
		<p>我爱滚145</p>
		<p>我爱滚146</p>
		<p>我爱滚147</p>
		<p>我爱滚148</p>
		<p>我爱滚149</p>
		<p>我爱滚150</p>
		<script>
			var timer = null; //定时器
			var delay = 500; //间隔
			window.addEventListener("scroll",function(e){
				if(timer){return} //如果有timer（还在等待中，返回）
				else{
					// 定时等待500毫秒执行 
					timer = setTimeout(()=>{
						console.log(document.documentElement.scrollTop,"监听发送请求")
						timer  = null;
					},delay)
				}
				
			})
			// /mi/fanyi.php?q=${$scope.keyword.key}
			function ajax(url,method="get",data,config={}){
				return new Promise((resolve,reject)=>{
					let xhr = new XMLHttpRequest();
					xhr.open(method,url);
					xhr.send(data);
					if(config.headers){
						for(var k in config.headers){
							xhr.setRequestHeader(k,config.headers[k])
						}
					}
					xhr.onreadystatechange = function (){
						if(xhr.readyState===4){
							if(xhr.status===200){
								resolve(JSON.parse(xhr.responseText))
							}
							
						} 
					}
				})
			}
			// ajax("http://dida100.com/mi/fanyi.php?q=我的")
			// .then(res=>{
			// 	console.log(res)
			// })
			// .catch(err=>{
			// 	console.error(err);
			// })
			ajax("http://dida100.com:8888/api/login","post",'{"name":"zql","password":"zmm123"}')
			.then(res=>{
				console.log(res);
			})
			.catch(err=>console.error(err))
			
			function jsonp(url){
				return new Promise((resolve,reject)=>{
					var script = document.createElement("script");
					var funName = "callback"+Date.now();
					var symbol = url.includes("?")?'&callback=':"?callback=";
					script.src = url+symbol+funName;
					document.body.appendChild(script);
					window[funName] = function(data){
						resolve(data);
						document.body.removeChild(script);
					}
					script.onerror = function(e){
						reject(e);
						document.body.removeChild(script);
					}
				})
			}
			jsonp("https://r.inews.qq.com/api/ip2city?otype=jsonp")
			.then(res=>{
				console.log(res);
				return jsonp(`https://wis.qq.com/weather/common?weather_type=observe|forecast_24h|air&source=pc&province=${res.provice}&city=${res.city}`)
			})
			.then(res=>{
				console.log(res);
			})
			.catch(err=>console.error(err))
			
			Function.prototype.myCall  =function(){
				var args = [...arguments];
				var context = args.shift()||window;				
				 
				// fn可以用符号代替
				context.fn = this;
				var result = context.fn(args);
				delete context.fn;
				return result;
			}
			function myfun(a,b){
				console.log(this,a,b);
			}
			myfun.myCall(location,3,5)
			
			function myNew(fun,...args){
				var obj = new Object();
				obj.__proto__ = fun.prototype;
				fun.apply(obj,args);
				return obj;
			}
			function Person(name,age){
				this.name = name;
				this.age = age;
			}
			var p = myNew(Person,"mumu",18);
			console.log(p);
			// 深拷贝
			// fill
			function flatten(arr){
				var str = arr.toString();
				console.log(str);
				return str.split(',').map(item=>{
					if(isNaN(+item)){
						return item;
					}else{
						return +item;
					}
				});
			}
			
			function flatten2(arr){
				var result = [];
				for(var i=0;i<arr.length;i++){
					if(Array.isArray((arr[i]))){
						return result.concat(flatten2(arr))
					}else{
						result.push(arr[i]);
					}
				}
				return result;
			}
			
		</script>
	</body>
</html> 
